home *** CD-ROM | disk | FTP | other *** search
/ BMUG PD-ROM BV3 / BMUG PD-ROM Version BV3 (CDRM1097900).iso / Telecom / Compacting Programs / MacBin / MacBinary II Conference 2 < prev    next >
Text File  |  1989-04-23  |  34KB  |  686 lines

  1. (18,Neil/Sysop) This is the second CO on the new MacBinary2 standard, conducted by...
  2.     representatives from the CompuServe, Delphi and BIX networks....
  3.     with representation from various companies and developers...
  4.     We'll at least start off with formal roundtable procedures...
  5.     meaning that the moderator (me because that's about all I can do) will...
  6.     ask who has comments and then call on each in order...
  7.     Don, now that we are recording could you please take the "floor" a...
  8.     second and introduce the "Amendment" sheet with maybe a leading
  9.     comment as to what it relates to from last week? thanks..over to you. ga
  10. (18,Don Brown/Sysop) OK, we worked out a proposal last week for a minor...
  11.     modification to MacBinary that would handle the new...
  12.     Finder bits, as well as making some provision for...
  13.     future expansion.  That proposal was published here...
  14.     on CIS, and I presume was also posted on Delphi and BIX.  Is...
  15.     everyone familiar with that proposal (before changes),...
  16.     or should I repeat it now?  If you want it repeated,...
  17.      please type "Yes"
  18. (18,Neil/Sysop) I think yes just for transcript purposes, maybe.
  19. (18,Don Brown/Sysop) Okay, here is the current proposal:
  20.     The new standard will be very similar to the
  21.     original MacBinary standard (as described in
  22.     MACBIN.STD, DL3 of AppDev), with
  23.     the following bytes now defined:
  24.      Offset  99-Byte, Finder Flags, bits 0-7.
  25.              (Bits 8-15 are already in byte 73)
  26.      Offset 122-Byte, Version number of uploaded
  27.            Macbinary (starts at 129)
  28.      Offset 123-Byte, Minimum MacBinary needed to
  29.          read this file (starts at 129)
  30.      Offset 124-Word, CRC of previous 124 bytes
  31.     All Finder flags and information would be
  32.     uploaded, however, a downloading
  33.     program should clear the Finder flag bits of
  34.      0 - Set if file/folder is on the
  35.           desktop (Finder 5.0 and later)
  36.      1 - bFOwnAppl (used internally)
  37.      8 - Inited (seen by Finder)
  38.      9 - Changed (used internally by Finder)
  39.     10 - Busy (copied from File System busy bit)
  40.     Also, fdLocation and fdFldr should be zeroed
  41.     
  42.     To determine if a header is a valid 
  43.     MacBinary header, check bytes 0 and 74 to
  44.     be both zero.  If they are both zero,
  45.     either (a) the CRC should match, which
  46.     means it is a MB II file, or (b) byte 82
  47.     is zero, which means it is a MB I
  48.     file.  (Note that, at the current version
  49.     level, byte 82 is kept zero to
  50.     maintain compatibility with MacBinary I.
  51.     If at some point the MacBinary
  52.     versions change sufficiently that it is
  53.     necessary to keep MacBinary I programs
  54.     from downloading these files, we can
  55.     change byte 82 to non-zero.)
  56.     
  57.     If the header is a MB II header, the
  58.     program will check the minimum version
  59.     byte, to see if it knows enough to
  60.     decode the file.  If the minimum version in
  61.     the header is greater than the version
  62.     that the terminal program was written
  63.     for, it will download the file as pure
  64.     XModem (creating a "TEXT" file) and
  65.     notify the user that conversion is needed
  66.     because the MacBinary version was too
  67.     high.
  68.     
  69.     That is the proposal as worked out last time.  In...
  70.     discussions on the board since then, the...
  71.     following changes have been suggested:
  72.     Ammendment#0
  73.     Bit 6 should NOT be cleared.
  74.     Ammendment#1
  75.     The word at offset 120 will hold the length of a
  76.     secondary header, to be skipped when decoding a MBII
  77.     file.  This is for future expansion, if we decide to
  78.     add a second header, but that the information in such
  79.     header is not vital to decoding a MBII file.  (Of course,
  80.     such a change WILL involve making the files incompatible
  81.     with MacBinary I.)  MBII should currently zero this
  82.     number.
  83.     Ammendment#2
  84.     The longword at offset 116 may optionally hold the
  85.     total disk space used by all files  if the MBII file
  86.     represents a packed, compressed set of files.  This
  87.     is for the convenience of any program that packs and
  88.     unpacks on the fly and can be ignored by most
  89.     implementations of MBII.  If the value here is zero,
  90.     it means that this value is Unknown.  MBII uploading
  91.     programs that do not have a proper value to fill this
  92.     field with must make sure it is zeroed.
  93.     We are not trying to limit changes here, if you...
  94.     have other changes, we can do that too, but...
  95.     this is my best understanding of the general consesus at...
  96.     this time.  ga
  97. (18,Mark Hagerman) With reference to offset 116...
  98.     should it be zero as well for non-packed files? ...
  99.     After all, the length IS known.  ga.
  100. (18,Don Brown/Sysop) We could go either way, but I'd suggest saying 0, so that...
  101.     a program that decodes on the fly knows whether this is a...
  102.     file that was packed separately and uploaded (so that...
  103.     the length would otherwise represent the length of...
  104.     the packed file), or is a packed-on-the-fly file.  So,...
  105.     only if the uploading program absolutely knows the total length...
  106.     if unpacked should it be non-zero.
  107. (18,Mark Hagerman) I'd suggest -1 to flag as non-packed, 0 for packed unknown.
  108. (18,Don Brown/Sysop) Mark, how does the terminal program know if it's packed unknown?
  109. (18,Mark Hagerman) I don't understand the question.
  110. (18,Don Brown/Sysop) I don't think I expressed myself clearly.  Let...
  111.     me give a scenario, if I might.
  112.     I pack six files together with Packit III, which...
  113.     have an unpacked size of 100K, but packed together...
  114.     have a length of 75K.  I then upload with MockTerminal,...
  115.     that has no way of knowing that this file I'm sending...
  116.     is a packed file as opposed ot a normal data file.  You then...
  117.     download it with WonderTerm, that unpacks on the fly.  It...
  118.     sees the length longword as saying 75K, and since the disk...
  119.     has 78K, starts the download.  It then starts download,...
  120.     unpacking on the fly, then runs out of space.  Was that...
  121.     any clearer?
  122. (18,Mark Hagerman) yah.
  123.     I guess I don't see that "WonderTerm"...
  124.     will do the on-the-fly unpacking, since...
  125.     the flags in the header won't have been set...
  126.     by MockTerminal.
  127. (18,Don Brown/Sysop) The assumption is that WonderTerm, seeing that the...
  128.     file it's about to download has a type of PIT and...
  129.     knowing the format of Packit 3 files, will unpack it on...
  130.     the fly.  WonderTerm will be keying off of the File type, just...
  131.     like the file type is used to determine whether...
  132.     Packit will try to unpack a certain file.
  133. (18,Mark Hagerman) But file type PIT  is specific to PackIt, nicht wahr?
  134.     Or at least, that format.
  135. (18,Don Brown/Sysop) Mark, yes, but it's been published, so anyone who...
  136.     wants to (and I want someone to SOOO BAAADDDD) could...
  137.     recognize the file type and unpack it on the fly.
  138. (18,Mark Hagerman) What about other packing algorithms?
  139. (18,Peter Olson/ICONtac) two comments ...
  140.     I think the field should be zero if the ...
  141.     file is not packed.  it should only be ...
  142.     used for a length if the originator wants ...
  143.     to give the receiver helpful information ...
  144.     about unpacking
  145.     second comment:
  146.     I plan to do some measurements of relative performance of ...
  147.     other packing algorithms in the next month or so ...
  148.     including the LZW's etc from ARC
  149. (18,Don Brown/Sysop) OK.  Mark, the same scheme would work...
  150.     equally well for any packing scheme, only the...
  151.     file type would be changed to protect...
  152.     the innocent.  ga
  153. (18,Harry Chesley) Two comments: (1) The PackIt file format is specifically set up to handle...
  154.     multiple formats of subfiles. This could include different compression...
  155.     schemes, or something completely different. It's already been used to add...
  156.     encryption.
  157.     (2) Don:
  158.     This is not a challenge but a question: What does the new format buy you...
  159.     that concatenating the current MacBinary and the current PackIt together...
  160.     doesn't. The current PackIt does include all 16 Finder flags. The big...
  161.     advantage of this approach would be that you either have a new MacBinary...
  162.     program that unpacks things for you, or (worst case) you use the old...
  163.     program and the new PackIt (or unpit). You do loose knowledge of the...
  164.     final size (an admitted flaw in the PackIt file format), but what else? ga
  165. (18,Don Brown/Sysop) First of all, it gets us all sixteen finder flags...
  166.     when we AREN'T packing files together, and if you'll...
  167.     recall from last time, there was an overwhelming...
  168.     consensus that we did NOT want to tie the new format...
  169.     into forcing a compression/packing algorithm.  Secondly,...
  170.     the loss of the final file size is a significant disadvantage...
  171.     once most people are switched over to the new system. Finally,...
  172.     it minimizes compatibility problems  in the interum, which...
  173.     is of vital importance.  Old programs will be around for...
  174.     a long, long time, and we must do whatever we can to...
  175.     minimize their problems, or else support departments...
  176.     and sysops develop prematurely gray hair (IMHO).
  177. (18,Harry Chesley) I don't have any strong feelings about this, and definitely don't want...
  178.     to force it if people want a clear separation of MacBinary and PackIt, but...
  179.     I want to make sure people understand that what we have right now (i.e.,
  180.     MacBinary/PackIt) does solve the primary problem being posed. All that is...
  181.     needed is new versions of the unpacking programs PackIt (coming out soon as...
  182.     V1.3) and unpit. That seems like a very simple solution in terms of...
  183.     educating users. If you want to separate compression, you can simply...
  184.     put two layers of PackIt around a file, one for packing and one for...
  185.     compression. It's not much different than one layer of MacBinary and...
  186.     one of PackIt. The final size is a definite plus, I agree. Is it worth...
  187.     a new protocol?...
  188.     Anyway, as I said, I don't want to force things, so I'll back off, having...
  189.     said that. I just wanted to be sure people understood it. ga
  190. (18,Neil/Sysop) I think what with the consensus last week on this point...
  191.     and we will be having that comp/decomp standards...
  192.     COs shortly....
  193.      Any comments from anyone on this point?
  194. (18,Clay Maeckel) How will an off the shelf program...
  195.     know what value to put in for the total...
  196.     length if it was not the program that...
  197.     packed it, or is the packing programs...
  198.     going to have to do the upload also.  ga
  199. (18,Don Brown/Sysop) Clay, the figure would only be able to be filled in...
  200.     with programs that pack and compress on the fly. ...
  201.     Harry,...
  202.     the problem with your idea is that it would lock us...
  203.     into Packit yet, this is more general, and I don't think...
  204.     we know enough yet to pick a packing/compression algorithm yet.  ga
  205. (18,Harry Chesley) It wouldn't really lock you into PackIt. At least not into PackIt compression...
  206.     algorithms. You can just use a different subfile type and have an entirely..
  207.     different compression algorithm. ga
  208. (18,Neil/Sysop) If I can just interject...
  209.     Unless I'm wrong, didn't we discuss this last week? I would hate to...
  210.     change something that was already consensed upon...
  211.     but I am not limiting discussion I just want to
  212.     point out that I think we have to stay with agreements as they
  213.     are made.. just my thought
  214. (18,Don Brown/Sysop) Yes, I'm afraid this is a bit of a rehash.  Anybody
  215.     else, though, want to reconsider this position?  ga
  216. (18,Harry Chesley) I said my bit, so don't hold up on account of me. ga
  217. (18,Neil/Sysop) Let me just ask both Bill Bond and Jean Hess a question...
  218.     Bill, is there anything in the proposal/amendments that would make...
  219.     it difficult to be implemented in Freeterm2? And Jean, likewise, that
  220.     would make it difficult for Hayes to accept for some reason?
  221. (18,William Bond) I don't see any problem...
  222.     I think compression/packing is an endless...
  223.     discussion that maybe should be put off...
  224.     for a while. ga
  225. (18,Jean Hess) I don't see any problem, either.  I do agree with
  226.     Bill that packing/compression is something which shouldn't
  227.     be made mandatory.  Adding a size, and making it optional is
  228.     another matter, I guess.  When we get to the second header 
  229.     stuff, I do have one question.  ga
  230. (18,William Bond) I'm not sure that I like the idea...
  231.     of a flag for another block...
  232.     especially, if we have no reason for it...
  233.     right now, why define it?...
  234.     I quess I like "standards" without options. ga
  235. (18,Don Brown/Sysop) Here's one scenario.  In August, Apple announces...
  236.     System 4.2 (this is hypothetical, BTW), and in it, they...
  237.     implement two new traps, _GetFileComment and _PutFileComment. ...
  238.     We decide then that it'd be nice to include it in the file...
  239.     transfers, as an additional header block.  On the other hand,...
  240.     since it isn't vital to the integrity of the file,...
  241.     we'd like to let WonderTerm download the file, skipping the...
  242.     header.  So, we agree a standard on including the comment...
  243.     for MacBinary 2 version 130.  However, we don't...
  244.     increase the minimum version needed to read it.  Old WonderTerm...
  245.     downloads a file with it, sees that there's a header,...
  246.     skips it, and gets the file perfectly.  That's one...
  247.     possibility where it'd be useful.  There might be others...
  248.     as well, it's just a method of allowing minor...
  249.     future tinkering without obsoleting all old programs if possible.
  250. (18,Jean Hess) Wasn't there a provision in the original MacBinary
  251.     standard specifically for that purpose?  ga
  252. (18,Don Brown/Sysop) Looking now, I don't see it, though I have...
  253.     a vague memory of it.  Anybody else help me out?
  254. (18,Peter Olson/ICONtac) The original standard allowed for information following ...
  255.     the end of the resource fork BUT ...
  256.     I think it would be better to have such additional ...
  257.     info specified, since a bad upload could ...
  258.     have information at the end of the file by accident
  259. (18,Jean Hess) Sorry, I don't have a copy of the standard here.  But I'm sure
  260.     I remember there being something in the header, which if non-zero,
  261.     meant that an additional block followed somewhere, maybe after
  262.     the header.  I thought it was intended for holding file comments
  263.     in the future.  I certainly remember implementing something
  264.     like that.  ga
  265. (18,William Bond) Peter has it right
  266. (18,Don Brown/Sysop) Okay, I found it.  Yes, the info comment...
  267.     was to be after the resource fork, but also the length was...
  268.     in bytes 99 †100.  Hmm, if anyone implemented this, that...
  269.     would cause a rather neat crash when we start putting flags...
  270.     into byte 99.  Perhaps we should move the additional finder...
  271.     flags into byte 101.
  272.     However,...
  273.     that was just one scenario about why we might want...
  274.     something else.  I'd still say let's keep the secondary...
  275.     header flag, just in case.  Should be easy to...
  276.     program, and no harm done if it's never implemented.
  277. (18,Neil/Sysop) OK but in 99 or 101? ga
  278. (18,Jean Hess) The byte 99 thing is implemented in Smartcom.  I won't say that
  279.     it works correctly, necessarily, but I vote for moving the new
  280.     stuff.  ga
  281. (18,Neil/Sysop) I feel if 99 is defined in MacBin 1 we are constrained...
  282.     to go to byte 101.
  283.     Any comments? ga
  284. (18,Larry Loeb/BIX) 101
  285. (18,Don Brown/Sysop) 101
  286. (18,Mark Hagerman) 101
  287. (18,Clay Maeckel) 101
  288. (18,Neil/Sysop) Anyone NOT in favor of 101?
  289. (18,Peter Olson/ICONtac) 101
  290. (18,Michael Pester) 101
  291. (18,Neil/Sysop) OK, yay!
  292. (18,Bill Davis) 101
  293. (18,Neil/Sysop) Don could you recap for us the various changes....
  294.     one at a time and we can see if there is any further...
  295.     discussion on each point and, if not, I guess move to...
  296.     a vote. ga
  297. (18,Don Brown/Sysop) OK.  I'll give the four changes, and after each change, if you...
  298.     object to it or want more conversation, say "No on this".
  299.     Ammendment #0--Do NOT clear bit six, shared bit, because...
  300.     it's needed by Appleshare.  Any objections?
  301.     Ammendment#1
  302.     The word at offset 120 will hold the length of a
  303.     secondary header, to be skipped when decoding a MBII
  304.     file.  This is for future expansion, if we decide to
  305.     add a second header, but that the information in such
  306.     header is not vital to decoding a MBII file.  (Of course,
  307.     such a change WILL involve making the files incompatible
  308.     with MacBinary I.)  MBII should currently zero this
  309.     number.
  310.     Do people want more discussion on this?
  311.     Ammendment#2
  312.     The longword at offset 116 may optionally hold the
  313.     total disk space used by all files  if the MBII file
  314.     represents a packed, compressed set of files.  This
  315.     is for the convenience of any program that packs and
  316.     unpacks on the fly and can be ignored by most
  317.     implementations of MBII.  If the value here is zero,
  318.     it means that this value is Unknown.  MBII uploading
  319.     programs that do not have a proper value to fill this
  320.     field with must make sure it is zeroed.
  321. (18,William Bond) I don't like #1, but assuming other do...
  322.     does length have to be a multiple of 128 (I hope) ga
  323. (18,Don Brown/Sysop) Okay, looks like we've got more discussion on 1.  We'll...
  324.     get back to it in a moment, does #2 pass everyone's approval? Speak...
  325.     now or hold your peace.  <grin>
  326.     Finally,...
  327.     Ammendment#3
  328.     The byte for extra finder flags will be at byte 101 instead
  329.     of byte 99
  330.     That already got passed, so my understanding of the...
  331.     group feeling is that 0, 2, and 3 are in the proposal.  Have...
  332.     I missed anybody's objections?
  333.     OK, I guess we're ready to get back to #1.  Bill, I'd...
  334.     have no problem with it being a multiple of 128,...
  335.     what does anyone else think?
  336. (18,Jean Hess) This is in general...It kind of bothers me that this is
  337.     going to make II incompatible with I.  Since the original
  338.     standard defined bytes 99 and 100 (or whatever) as being
  339.     the length of an additional header, couldn't we just use
  340.     those, instead of adding more?  Maybe I'm not remembering correctly,
  341.     since I don't have the standard here.  ga
  342. (18,Don Brown/Sysop) Just wanted to point out that it does NOT make it incompatible...
  343.     yet, would only be incompatible if we wanted to set up a 2.1...
  344.     at some point that used the header.  On the other hande, since...
  345.     we've got that in MacBinary I already, we could just junk...
  346.     the whole idea, and use that header instead.
  347. (18,Jean Hess) Is there a difference in what's defined in I as the purpose
  348.     of the bytes, and what your intention was for II?  ga
  349. (18,Don Brown/Sysop) OK.  MacBinary 1 specifies that it is exactly for...
  350.     GetInfo comments.  The second header in MacBinary 2 had...
  351.     no real purpose hooked up to it, it was just thought...
  352.     we might need one in the future sometime, and the...
  353.     GetInfo comment was one potential use.  My personal guess is...
  354.     that we'll never implement the second header, but...
  355.     I've been wrong before betting on the future, and it...
  356.     seemed like a painless way of providing some expansion...
  357.     capability.
  358. (18,Peter Olson/ICONtac) Don, if I understand your reading of the ...
  359.     standard properly earlier in the CO, the ...
  360.     99.100 length refers to data at the end of the transfer, not the ...
  361.     beginning, where it might be needed.
  362.     I like the proposal for the optional length of a secondary header as it has been ...
  363.     proposed
  364.     also, I have a comment on Bill's suggest on 128 byte rounding
  365. (18,William Bond) The problem with extra data as a header is that it will
  366.     break any program that does not expect it. A trailer or
  367.     additions to the MacBinary header does not cause this problem. 
  368. (18,Don Brown/Sysop) It'll only break in the future if we decide we need to add...
  369.      a second header at the start.  If we implement the header as...
  370.     a header count NOW, then MacBinary 2.0 (what we're doing...
  371.     now) will not break MacBinary 1.0 (because the header...
  372.     is zero).  If we need that header for MacBinary 2.1,...
  373.     it will break MacBinary 1.0 (since it won't...
  374.     know how to deal with that header) but won't break...
  375.     MacBinary 2.0.
  376.     Just want to repeat, that this is hypothetical,...
  377.     here may never be a 2.1, and nothing may ever change.  Now ga.
  378. (18,Jean Hess) Don, what is the description of the byte 99 length in
  379.     1.0?  Does it follow the header, or does it follow the file?  ga
  380. (18,Don Brown/Sysop) In the MacBinary 1 plan, bytes 99 †100 make up a word length...
  381.     of a get info comment that is placed...
  382.     after the final fork is transmitted.  It goes...
  383.     at the end.
  384. (18,Larry Loeb/BIX) I've been thinking ...
  385.     (surprise!) that maybe a trailer *is*..
  386.     a Good Idea. Maybe a MacB 2.1 would...
  387.     know that it's there;but I dont see it..
  388.     breaking MacB I (which makes me ..
  389.     *very* nervous) because the MacB I
  390.     would ignore the trailer, yes?
  391. (18,Don Brown/Sysop) I agree.  Let's sort of undefine the trailer from...
  392.     MacBinary 1 from being specifically for GetInfo comments,...
  393.     and change it instead to an optional trailer, whose...
  394.     length is in the word starting at 99.  Any disagreements?  ga
  395. (18,Peter Olson/ICONtac) beginning of the transfer?  (such as a sdifferent ...
  396.     solution to the packing problem) ...
  397.     by allowing for a secondary header now, we ...
  398.     provide an orderly path for the future
  399. (18,Larry Loeb/BIX) ouch.
  400. (18,Mark Hagerman) Personally, I think there should be provision for...
  401.     both additional header AND trailer data, but that...
  402.     the indicator should show the number of 128-byte blocks...
  403.     in each one.  Probably, a one-byte field would...
  404.     serve for each one (header and trailer). ga
  405. (18,Jean Hess) I don't have a problem with adding the 2nd header size
  406.     as the number of blocks following the first header,
  407.     since it's not going to break anything right away.
  408.     I don't think that we should go changing the
  409.     definition of bytes 99 and 100 as specified in
  410.     the original standard, though.  ga
  411. (18,Mark Hagerman) You're right.
  412. (18,Larry Loeb/BIX) I withdraw the Good Idea..
  413.     Let me apologise for being late... It was a good weekend. It is becoming 
  414.     obvious to me that y'all are discussing something a bit different from what
  415.     is now in DL6. Can I get a very short summary? I also have some comments on
  416.     that doc and several improvements, but want to wait until y'all are ready.
  417. (18,Neil/Sysop) Jack we cannot backtrack at present...
  418.     it would be too confusing... Basically the amendments as...
  419.     listed on the board and in the DL have been passed with...
  420.     the exception of the the one dealing with bytes to reference a,...
  421.     possible second header which is the issue now under discussion...
  422.     It looks like we are back to accepting that amendment? Or...
  423.     do we have more comments directly on that amendment? ga
  424. (18,Peter Olson/ICONtac) I like the idea of rounding the size of the ...
  425.     secondary header to an even multiple of 128 ...
  426.     exactly in the same fashion the data fork and ...
  427.     resource fork are treated now (ie, if the ...
  428.     number in the primary header reads 235, the ...
  429.     number of bytes allocated to the secondary
  430.     header is 256)
  431. (18,Neil/Sysop) Yes, I think that everyone appears to like...
  432.     the multyiple-of-128
  433. (18,Clay Maeckel) If we go with the 128 deal,
  434.     we could put it in byte 82 to
  435.     make sure that MacBinary I will
  436.     not read it.  ga
  437. (18,Larry Loeb/BIX) wont MacB 1 blow up on that?
  438.     [one way of getting it not to read it...]
  439. (18,Neil/Sysop) Don, could you summarize where we are? <hehe> ga
  440. (18,Don Brown/Sysop) OK, I'll try.
  441.     As I see it, we are considering what to do to...
  442.     support a potential future additional block.  We can...
  443.     (1) Do what the proposal was, where we put the length...
  444.     in two bytes that escape me at the moment, which a...
  445.     MacBinary II file will skip.  If this is done,...
  446.     we need to put something non-zero into byte 82, so that...
  447.     MacBinary I won't get confused if we try it, or...
  448.     (2) we put the block as a trailer, with the length in...
  449.     bytes 99 †100.  The flaw with 2 is that we might...
  450.     need the info before we download the file, if it's...
  451.     used for something like unpacking.  Have I...
  452.     misstated anyone's position?
  453.     ga
  454. (18,Clay Maeckel) We might as well make byte 82 useful..
  455.     as the number of 128 byte blocks used..
  456.     as the header instead of using the two..
  457.     bytes else where.  ga
  458. (18,Don Brown/Sysop) That's right, skipped that.  Consider it (1a).
  459. (18,Don Brown/Sysop) Any other comments/discussion, or are we ready for a vote?
  460. (18,Peter Olson/ICONtac) we might want to break Macbinary I without allocating ...
  461.     any secondary header blocks ... Clay's proposal ...
  462.     prevents that
  463. (18,Larry Loeb/BIX) peabo: ....
  464.     what other functions besides...
  465.     comp/decomp can you see...
  466.     needing this kind of into on the fly?..
  467.     I can see not having to build a temp file...
  468.     during download . That's why a header may..
  469.     be used instead of a trailer...
  470.     Is there any other function (ignoring the...
  471.     other obvious encryption application...
  472.     that has the same need for reduced...
  473.     user disk pace.) Do we need headers *and*
  474.     trailers available?
  475. (18,Peter Olson/ICONtac) for example, making a list of the true sizes of all ...
  476.     the files in the package, external to the ...
  477.     packing format, so the program can size the disk ...
  478.     and prepare for a disk swap  ...
  479.     however, like Don, I don't like betting against ...
  480.     the future, so I'd like a header available ...
  481.     for 1988 implementations
  482.     I don't think decomp needs temporary files ...
  483. (18,Don Brown/Sysop) OK, let's vote.
  484.     If you want a header, type 1.  Else, type 2.  We'll decide...
  485.     how to flag that header if any next.
  486. (18,Mark Hagerman) 1
  487. (18,Larry Loeb/BIX) 1
  488. (18,Jean Hess) 1
  489. (18,Peter Olson/ICONtac) 1
  490. (18,Raines/BMUG) 1
  491. (18,H.Conover/Alt.Sysop) 1
  492. (18,Clay Maeckel) 1
  493. (18,Neil/Sysop) 1
  494. (18,H.Conover/Alt.Sysop) Looks like it's #2 then, right ?
  495. (18,Don Brown/Sysop) Okay, looks like we've got a header.  So,...
  496.     where do we put the length?  If you want the number of 128...
  497.     byte blocks in byte 82, type 82.  Else, type 120 (where the...
  498.     word length goes).
  499.     (If you don't have a preference, type "don't care").
  500. (18,Jean Hess) 120
  501. (18,Peter Olson/ICONtac) 120
  502. (18,William Bond) 82
  503. (18,Harry Chesley) 120
  504. (18,Clay Maeckel) 82
  505. (18,H.Conover/Alt.Sysop) 120
  506. (18,Mark Hagerman) abstain
  507. (18,Larry Loeb/BIX) dont care
  508. (18,Neil/Sysop) don't care
  509. (18,H.Conover/Alt.Sysop) can't dance
  510. (18,Raines/BMUG) je ne sais pas.
  511. (18,Jack Brindle) 120]
  512. (18,Don Brown/Sysop) Okay, by a slight preference, it's 120.  Finally, anybody...
  513.     object to stating that the size should be rounded up to 128...
  514.     byte increment?  Say "OK" or "don't round", please.
  515.     (Someday I'll figure out how to phrase things clearly)
  516. (18,Peter Olson/ICONtac) OK
  517. (18,Neil/Sysop) ok
  518. (18,Larry Loeb/BIX) er--Ok
  519. (18,Mark Hagerman) ok
  520. (18,Clay Maeckel) OK
  521. (18,Harry Chesley) errrr... OK
  522. (18,Jean Hess) Does this mean the sender must force it, or the receiver will
  523.     be smart enough to take care of it (even 128 bytes)?
  524. (18,Don Brown/Sysop) If we do decide to use this header in the...
  525.     future, I'd push for having the protocol insist on a 128...
  526.     byte increment, but just in case, what I'm suggesting...
  527.     is that the receiving program take the length and round...
  528.     up if necessary, if it isn't a multiple of 128.  clear?
  529. (18,Jean Hess) That's fine.  ga
  530. (18,Neil/Sysop) yes
  531. (18,Mark Hagerman) transmitting routine should force it
  532. (18,Don Brown/Sysop) Okay, looks like that's all cleared up.  So, bytes 120 †121 will...
  533.     have the length of an optional header.  A MB2 reading program...
  534.     should take the value there, round it up to 128 bytes,...
  535.     and skip that many bytes.  A MB2 sending program should...
  536.     make sure the word is zeroed.
  537.     Now, any other proposed changes to the MB proposal?
  538. (18,Neil/Sysop) The format is obviously smart enough to know what it is...
  539.     but for the user do we need a new suffix such as .BI2? I can...
  540.     see where that might come in handy in some scenarios. ga
  541. (18,Don Brown/Sysop) Well, my thought would be that we don't need it yet,...
  542.     because at the moment, we're backwards compatible, but...
  543.     anyone else have a comment?
  544. (18,Neil/Sysop) OK, here is why I would like to have it....
  545.     There are rumours that one software company on their own...
  546.     is revamping MacBinary.....
  547.     And it may or may not be compatible with what we have here..
  548.     I asked them to be here, they said they wouldbe, they are not...
  549.     If the USER must pick BI2 as a suffix that means the user will...
  550.     determine if he or she has an acceptable MacBinary II term program...
  551.     before uploading which a rogue program might not do. ga
  552. (18,Jack Brindle) I tend to agree with Niel...
  553.     He has touched on one of the points I would like to make, but within the format.
  554.     It seems to me the biggest problem we have in MacBinary is difficulty in
  555.     recognition. The problems we are trying to resolve are caused by using
  556.     bytes that just happened, at one time, to be defined as zero. I believe we
  557.     need to add a recognition signature to the format so that there is no
  558.     doubt what kind of format we have. This would greatly reduce problems when we
  559.     again modify the format in the future. The form of the signature should be
  560.     four bytes similar to the fdType field, except containing something like:
  561.     BIN2 or MBN2 or whatever.
  562. (18,Larry Loeb/BIX) The signature I thought was taken...
  563.     care of by the version numbers in the main spec...
  564.     Point2:
  565.     I disagree with needing an additional suffix...
  566.     UNTIL it breaks MacB I...
  567.     If SV wants to extend the protocol..
  568.     on their own; let 'em. The price they pay...
  569.     for non-conforming is the users overloading...
  570.     the telephone support line and not buying the product.
  571. (18,Don Brown/Sysop) One point--the recognition was going to be by the version...
  572.     number, and also the CRC, I don't think we need an explicit...
  573.     signature.  Go, Jack, then Peter.
  574. (18,Jack Brindle) Well, I guess I need to sell harder. When a file comes into a machine, there
  575.     is nothing really to seperate it from any other data stream. The format we
  576.     defined could actually be something else. Someone doing a program that tries
  577.     to recognize several formats could tear their hair out figuring what was what.
  578.     In fact many systems have, for example, PC and Mac programs sitting side by side.
  579.     We really don't have anything concrete that seperates the two. 
  580.     Point two. What do we do when Apple activates the ioFlVersNum field? Do we then
  581.     modify the format to re-add that field? That is now used for format recognition!
  582.     By adding special recognition characters, we remove all doubt and force the
  583.     issue.
  584.     Now, as for supporting the MacBinary product, I can tell you what our policy
  585.     will be...
  586.     We will support MacBinary I, and whatever Apple is doing with their file
  587.     transfer protocol. ga
  588. (18,Harry Chesley) (I have to get going. I'll catch it on the transcript. See y'all later.)
  589. (18,Don Brown/Sysop) Harry, can you wait just a second?
  590.     I think we're almost ready for a vote here.
  591.     Go ahead, Peabo, then let's try for a final consensus
  592. (18,Peter Olson/ICONtac) Jack, the CRC is very secure for ...
  593.     recognition, and I think that ...
  594.     the ioFlVersNum filed died with MFS ...
  595.     Point two: ...
  596.     The difficulty with Software Ventures is ...
  597.     not entirely their fault ...
  598.     yes, they should have pushed for an earlier ...
  599.     scheduling of THIS CO, and they didn't, ...
  600.     but we have to recognize they were ...
  601.     under pressure to release a product ...
  602.     for other reasons.  I'd like to know ...
  603.     just what they ARE going to do with ...
  604.     the product delivery mess they are ...
  605.     now in as a result of possible ...
  606.     differences between their ...
  607.     implementation and what we are ...
  608.     recommending.  It concerns us ...
  609.     all, I think.
  610. (18,Larry Loeb/BIX) patch
  611. (18,Peter Olson/ICONtac) a patch is technically easy but the ...
  612.     problem is distributing it
  613. (18,Don Brown/Sysop) OK, it's getting late, let's go for some votes.  Bill,...
  614.     is it vital?
  615. (18,Don Brown/Sysop) Bill?
  616. (18,William Bond) Has SV released any doc on what they did?
  617. (18,Neil/Sysop) Bill, no. 
  618. (18,Don Brown/Sysop) Not yet, Bill, we were hoping they'd be here.  Nobody...
  619.     here knows, correct?
  620. (18,Neil/Sysop) (I spoke to Mike Quinn Weds and he said he'd be here)
  621. (18,Larry Loeb/BIX) Neil: then you did all you could.
  622. (18,Don Brown/Sysop) Okay, let's make some decisions and put this baby to rest.
  623.     1.  Do we need to add a character signature to the header?...
  624.     Please type "yes" or "no"
  625. (18,Peter Olson/ICONtac) no
  626. (18,Larry Loeb/BIX) no
  627. (18,Neil/Sysop) no
  628. (18,Don Brown/Sysop) The character signature is defeated, then.
  629.     2.  Do we need to change the "standard" 3 letter suffix...
  630.     for MacBinary 2 files, given that they're still...
  631.     backwards compatible?  Please type "yes" or "no"
  632. (18,Larry Loeb/BIX) not yet
  633. (18,Jean Hess) no
  634. (18,Neil/Sysop) no (I gess)
  635. (18,Clay Maeckel) no
  636. (18,Don Brown/Sysop) Okay, so neither the character signature or the change...
  637.     in suffix are adopted.  Do people want to close off all...
  638.     futher amendments to the current proposal?  yes or no.
  639. (18,Peter Olson/ICONtac) yes
  640. (18,Larry Loeb/BIX) aye
  641. (18,Neil/Sysop) yes
  642. (18,Clay Maeckel) yes
  643. (18,Don Brown/Sysop) Okay, we're done with amendments.  We now come to the big...
  644.     one.  We have the proposal, amended so that we don't...
  645.     clear bit 6 of the finder flags, we move the byte of...
  646.     extra finder flags to byte 101, we have a header length..
  647.     in bytes 120 †121, and an optional total unpacked...
  648.     length in bytes 116-119.  IS THE PROPOSAL ADOPTED?  Type yes or no.
  649. (18,Peter Olson/ICONtac) yes!
  650. (18,Neil/Sysop) yes!
  651. (18,Jean Hess) yes
  652. (18,Clay Maeckel) yes
  653. (18,William Bond) yes
  654. (18,Neil/Sysop) Great!
  655. (18,Don Brown/Sysop) Okay, we've got a proposal
  656. (18,Neil/Sysop) OK
  657. (18,Neil/Sysop) I'd just like to point out that this proposal will only...
  658.     really work if everyone involved keeps pushing it so let's all...
  659.     make sure that this is disseminated as widely as possible...
  660.     and I will let Dan C. know that we have something coming up for...
  661.     the next Software Supplement addition as last time...
  662. (18,Larry Loeb/BIX) Have their been any "official" comments on...
  663.     draft 1 from Apple. Besides Perez, I mean...[grin]
  664. (18,Neil/Sysop) Not as such but we did have a couple Apple....
  665.     people here last week so this is not much different ...
  666.     at all since then. I think we will not have problems from that..
  667.     end anyway. ga
  668. (18,Don Brown/Sysop) BTW, I think as a follow up, we need to schedule a...
  669.     conference for a few weeks from now for a "recommended"..
  670.     packing/compression algorithm to use in conjunction with...
  671.     MacBinary 2.  It may be Packit, it may not, but we all need...
  672.     time to investigate it first.  Should we try to...
  673.     schedule such a conference?
  674. (18,Neil/Sysop) How's July 19?
  675. (18,Neil/Sysop) (a Sunday)
  676. (18,Peter Olson/ICONtac) fine with me
  677. (18,Don Brown/Sysop) Sounds good to me.  Let's get the word out on that.  Any...
  678.     final comments from anyone?
  679. (18,Larry Loeb/BIX) who knows? I live 20 minutes at a time..
  680. (18,William Bond) Good! A co where everyone will agree.
  681. (18,Peter Olson/ICONtac) Bill :-)
  682. (18,Neil/Sysop) Just that we all deserve a round of applause!
  683. (18,Neil/Sysop) <clap!!!!>
  684. (18,Don Brown/Sysop) Bill, you willing to make book on that?
  685. (18,Don Brown/Sysop) I guess we're adjourned!